home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 February: Tool Chest / Dev.CD Feb 94.toast / Tool Chest / Development Platforms / Apple II / Essentials / MPW IIGS Interfaces / PIIGSIncludes / Locator.p < prev    next >
Encoding:
Text File  |  1993-06-15  |  5.1 KB  |  168 lines  |  [TEXT/MPS ]

  1. {********************************************
  2. ; File: Locator.p
  3. ;
  4. ;
  5. ; Copyright Apple Computer, Inc. 1986-93
  6. ; All Rights Reserved
  7. ;
  8. ********************************************}
  9.  
  10. UNIT LOCATOR;
  11. INTERFACE
  12. USES TYPES;
  13. CONST
  14.  
  15. { Error Codes }
  16. toolNotFoundErr = $0001;
  17. funcNotFoundErr = $0002;
  18. sysStrtMtErr = $0100;  { can't mount system startup volume }
  19. tlBadRecFlag = $0103;  { StartStop record invalid }
  20. tlCantLoad = $0104;  { A tool cannot be loaded }
  21. toolVersionErr = $0110;
  22. messNotFoundErr = $0111;
  23. messageOvfl = $0112;  { No message numbers available }
  24. nameTooLong = $0113;  { Message name too long }
  25. reqNotAccepted = $0120; { SendRequest request not accepted }
  26. duplicateName = $0121; { duplicate name for AcceptRequests }
  27. invalidSendRequest = $0122; { bad combo of target and sendHow }
  28.  
  29. { MessageCenter Codes }
  30. fileInfoType = $0001;  { Message type parameter }
  31. addMessage = $0001;  { action parameter }
  32. getMessage = $0002;  { action parameter }
  33. deleteMessage = $0003;  { action parameter }
  34. fileInfoTypeGS = $0011;    { Message type parameter }
  35.  
  36. { GetMsgHandle flags values }
  37. gmhByIndex = 0;
  38. gmhByType = 1;
  39. gmhByName = 2;
  40.  
  41. { SendRequest/AcceptRequests codes }
  42. systemSaysBeep = $0001; { used by SysBeep2 }
  43. systemSaysUnknownDisk = $0002; { used by HandleDiskInsert }
  44. srqGoAway = $0003;
  45. srqGetrSoundSample = $0004;
  46. srqSynchronize = $0005;
  47. srqPlayrSoundSample = $0006;
  48. systemSaysNewDeskMsg = $0008;
  49. systemSaysEjectingDev = $000E;
  50. systemSaysDeskStartUp = $0502;
  51. systemSaysDeskShutDown = $0503;
  52. systemSaysFixedAppleMenu = $051E;
  53. systemSaysMenuKey = $0F01;
  54. systemSaysDoClipboard = $000C;
  55. systemSaysForceUndim = $000D;
  56. srqOpenOrPrint = $0010;
  57. srqQuit = $0011;
  58. systemSaysGetSysIcon = $1201;
  59.  
  60. { SendRequest sendHow values }
  61. stopAfterOne = $8000;
  62. sendToAll = 0;
  63. sendToName = 1;
  64. sendToUserID = 2;
  65.  
  66. { StartUpTools flag bits }
  67. leaveScreenClean = $0004;
  68. openResAsAllowed = $0008;
  69. noResourceMgr = $0010; { for ShutDownTools, too }
  70.  
  71. { TLMountVolume Codes }
  72. mvReturn = $0001;  { like ok for dialogs }
  73. mvEscape = $0002;  { like cancel for dialogs }
  74.  
  75. { Tool Set Spec Codes }
  76. sysTool = $0000;
  77. userTool = $8000;
  78. {$IFC UNDEFINED theToolsLength }  { ToolTable - default number of ToolSpecs }
  79. theToolsLength = $0010;
  80. {$SETC theToolsLength := 0}
  81. {$ENDC}
  82.  
  83. TYPE
  84. MessageRecHndl = ^MessageRecPtr;
  85. MessageRecPtr = ^MessageRec;
  86. MessageRec = RECORD
  87.     messageNext : MessageRecHndl;
  88.     messageType : Integer;
  89.     messageData : Integer;
  90.     fileNames : PACKED ARRAY[1..1] OF Str255;
  91. END;
  92.  
  93. wStringHndlPtr = ^wStringHndl;
  94. wStringHndl = ^wStringPtr;
  95. wStringPtr = ^wString;
  96. wString = RECORD
  97.     length: Integer; { Number of Chars in text field }
  98.     text: Packed Array [1..255] of Char;
  99. end;
  100.  
  101. MessageRecGSHndl = ^MessageRecGSPtr;
  102. MessageRecGSPtr = ^MessageRecGS;
  103. MessageRecGS = RECORD
  104.     reserved    : LongInt;    { reserved }
  105.     messageType    : Integer;
  106.     printFlag    : Integer;
  107.     fileNames    : Packed Array [1..1] of wString;
  108. End;
  109.  
  110. ToolSpec = RECORD
  111.     toolNumber : Integer;
  112.     minVersion : Integer;
  113. END;
  114. ToolTablePtr = ^ToolTable;
  115. ToolTable = RECORD
  116.     toolCount : Integer;
  117.     theTools : ARRAY[1..theToolsLength] OF ToolSpec;
  118. END;
  119. StartStopRecordPtr = ^StartStopRecord;
  120. StartStopRecord = RECORD
  121.     flags : Integer;
  122.     videoMode : Integer;
  123.     resFileID : Integer;
  124.     dPageHandle : Handle;
  125.     numTools : Integer;
  126.     theTools : ARRAY[1..theToolsLength] OF ToolSpec;
  127. END;
  128.  
  129. srqGoAwayOutPtr = ^srqGoAwayOut;
  130. srqGoAwayOut = RECORD
  131.     recvCount: integer;
  132.     resultID: integer; { returned UserID }
  133.     resultFlags: integer; { returned flags: bit 15 = Restartable, 14-0=reserved }
  134. END;
  135.  
  136. ResponseRecord = Longint ;
  137.  
  138. FUNCTION GetFuncPtr ( userOrSystem:Integer; funcTSNum:Integer) : Ptr;
  139. FUNCTION GetTSPtr ( userOrSystem:Integer; tSNum:Integer) : Ptr;
  140. FUNCTION GetWAP ( userOrSystem:Integer; tSNum:Integer) : Ptr;
  141. PROCEDURE LoadOneTool ( toolNumber:Integer; minVersion:Integer);
  142. PROCEDURE LoadTools ( theToolTablePtr:ToolTablePtr);
  143. FUNCTION MessageByName ( createItFlag:Boolean; recordPtr:Ptr) : ResponseRecord ;
  144. PROCEDURE MessageCenter ( action:Integer; messagetype:Integer; messageHandle:MessageRecHndl)  ;
  145. PROCEDURE RestoreTextState ( stateHandle:Handle);
  146. FUNCTION SaveTextState  : Handle ;
  147. PROCEDURE SetDefaultTPT;
  148. PROCEDURE SetTSPtr ( userOrSystem:Integer; tsNum:Integer; fptablePtr:FPTPtr)  ;
  149. PROCEDURE SetWAP ( userOrSystem:Integer; tSNum:Integer; waptPtr:Ptr)  ;
  150. PROCEDURE ShutDownTools ( startStopDesc:RefDescriptor; startStopRef:Ref)  ;
  151. FUNCTION StartUpTools ( userID:Integer; startStopRefDesc:RefDescriptor; startStopRef:Ref) : Ref ;
  152. PROCEDURE TLBootInit;
  153. FUNCTION TLMountVolume ( whereX:Integer; whereY:Integer; line1:Str255; line2:Str255; but1:Str255; but2:Str255) : Integer ;
  154. PROCEDURE TLReset;
  155. PROCEDURE TLShutDown;
  156. PROCEDURE TLStartUp;
  157. FUNCTION TLStatus  : Boolean ;
  158. FUNCTION TLTextMountVolume ( line1:Str255; line2:Str255; but1:Str255; but2:Str255) : Integer ;
  159. FUNCTION TLVersion  : Integer ;
  160. PROCEDURE UnloadOneTool ( toolNumber:Integer)  ;
  161.  
  162. FUNCTION GetMsgHandle(flags:integer; messageRef: LongInt): MessageRecHndl;
  163. PROCEDURE AcceptRequests(nameString:StringPtr; userID:integer; requestProc:WordProcPtr);
  164. PROCEDURE SendRequest(reqCode:integer; sendHow:integer; target, dataIn: UNIV LongInt; dataOut: Ptr);
  165.  
  166. IMPLEMENTATION
  167. END.
  168.